<!-- HTML header for doxygen 1.8.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.11"/>
<meta name="robots" content="NOINDEX, NOFOLLOW" /> <!-- Prevent indexing by search engines -->
<title>Compute Library: ICLMemoryRegion Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { init_search(); });
</script>
<script type="text/x-mathjax-config">
  MathJax.Hub.Config({
    extensions: ["tex2jax.js"],
    jax: ["input/TeX","output/HTML-CSS"],
});
</script><script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">Compute Library
   &#160;<span id="projectnumber">18.05</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.11 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.xhtml"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.xhtml"><span>Related&#160;Pages</span></a></li>
      <li><a href="namespaces.xhtml"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.xhtml"><span>Data&#160;Structures</span></a></li>
      <li><a href="files.xhtml"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.xhtml"><span>Data&#160;Structures</span></a></li>
      <li><a href="classes.xhtml"><span>Data&#160;Structure&#160;Index</span></a></li>
      <li><a href="inherits.xhtml"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.xhtml"><span>Data&#160;Fields</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('classarm__compute_1_1_i_c_l_memory_region.xhtml','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a>  </div>
  <div class="headertitle">
<div class="title">ICLMemoryRegion Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div>  </div>
</div><!--header-->
<div class="contents">

<p>OpenCL memory region interface.  
 <a href="classarm__compute_1_1_i_c_l_memory_region.xhtml#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="_c_l_memory_region_8h_source.xhtml">CLMemoryRegion.h</a>&gt;</code></p>
<div class="dynheader">
Collaboration diagram for ICLMemoryRegion:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="classarm__compute_1_1_i_c_l_memory_region__coll__graph.svg" width="146" height="112"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
</div>
<center><span class="legend">[<a target="top" href="graph_legend.xhtml">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a7cdcf7d89e4815422fcb3843e4ffbb4b"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_memory_region.xhtml#a7cdcf7d89e4815422fcb3843e4ffbb4b">ICLMemoryRegion</a> (cl::Context ctx, size_t <a class="el" href="classarm__compute_1_1_i_memory_region.xhtml#a0b6b70701c46e22849f0f363861351cd">size</a>)</td></tr>
<tr class="memdesc:a7cdcf7d89e4815422fcb3843e4ffbb4b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="#a7cdcf7d89e4815422fcb3843e4ffbb4b">More...</a><br /></td></tr>
<tr class="separator:a7cdcf7d89e4815422fcb3843e4ffbb4b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a04ae87317614a2332dea02ad30eaced5"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_memory_region.xhtml#a04ae87317614a2332dea02ad30eaced5">~ICLMemoryRegion</a> ()=default</td></tr>
<tr class="memdesc:a04ae87317614a2332dea02ad30eaced5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default Destructor.  <a href="#a04ae87317614a2332dea02ad30eaced5">More...</a><br /></td></tr>
<tr class="separator:a04ae87317614a2332dea02ad30eaced5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af1759d36be2abbe1002a68ddc2255fad"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_memory_region.xhtml#af1759d36be2abbe1002a68ddc2255fad">ICLMemoryRegion</a> (const <a class="el" href="classarm__compute_1_1_i_c_l_memory_region.xhtml">ICLMemoryRegion</a> &amp;)=delete</td></tr>
<tr class="memdesc:af1759d36be2abbe1002a68ddc2255fad"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prevent instances of this class from being copied (As this class contains pointers)  <a href="#af1759d36be2abbe1002a68ddc2255fad">More...</a><br /></td></tr>
<tr class="separator:af1759d36be2abbe1002a68ddc2255fad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4e5aaebd133c159b70f757d6ba7c4dc5"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_memory_region.xhtml#a4e5aaebd133c159b70f757d6ba7c4dc5">ICLMemoryRegion</a> (<a class="el" href="classarm__compute_1_1_i_c_l_memory_region.xhtml">ICLMemoryRegion</a> &amp;&amp;)=default</td></tr>
<tr class="memdesc:a4e5aaebd133c159b70f757d6ba7c4dc5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default move constructor.  <a href="#a4e5aaebd133c159b70f757d6ba7c4dc5">More...</a><br /></td></tr>
<tr class="separator:a4e5aaebd133c159b70f757d6ba7c4dc5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aba791ecf7c921e9a1c8d84baa7dd270e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_i_c_l_memory_region.xhtml">ICLMemoryRegion</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_memory_region.xhtml#aba791ecf7c921e9a1c8d84baa7dd270e">operator=</a> (const <a class="el" href="classarm__compute_1_1_i_c_l_memory_region.xhtml">ICLMemoryRegion</a> &amp;)=delete</td></tr>
<tr class="memdesc:aba791ecf7c921e9a1c8d84baa7dd270e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prevent instances of this class from being copied (As this class contains pointers)  <a href="#aba791ecf7c921e9a1c8d84baa7dd270e">More...</a><br /></td></tr>
<tr class="separator:aba791ecf7c921e9a1c8d84baa7dd270e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad09657054c2f981a19b9ac7e4b95bd30"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classarm__compute_1_1_i_c_l_memory_region.xhtml">ICLMemoryRegion</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_memory_region.xhtml#ad09657054c2f981a19b9ac7e4b95bd30">operator=</a> (<a class="el" href="classarm__compute_1_1_i_c_l_memory_region.xhtml">ICLMemoryRegion</a> &amp;&amp;)=default</td></tr>
<tr class="memdesc:ad09657054c2f981a19b9ac7e4b95bd30"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default move assignment operator.  <a href="#ad09657054c2f981a19b9ac7e4b95bd30">More...</a><br /></td></tr>
<tr class="separator:ad09657054c2f981a19b9ac7e4b95bd30"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7f4714c4a9320d1760102ef78a984241"><td class="memItemLeft" align="right" valign="top">const cl::Buffer &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_memory_region.xhtml#a7f4714c4a9320d1760102ef78a984241">cl_data</a> () const </td></tr>
<tr class="memdesc:a7f4714c4a9320d1760102ef78a984241"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the underlying CL buffer.  <a href="#a7f4714c4a9320d1760102ef78a984241">More...</a><br /></td></tr>
<tr class="separator:a7f4714c4a9320d1760102ef78a984241"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab8777d03065e8c7146157148a5355dd1"><td class="memItemLeft" align="right" valign="top">virtual void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_memory_region.xhtml#ab8777d03065e8c7146157148a5355dd1">ptr</a> ()=0</td></tr>
<tr class="memdesc:ab8777d03065e8c7146157148a5355dd1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Host/SVM pointer accessor.  <a href="#ab8777d03065e8c7146157148a5355dd1">More...</a><br /></td></tr>
<tr class="separator:ab8777d03065e8c7146157148a5355dd1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a929af627a6a0430539998d12024d6c69"><td class="memItemLeft" align="right" valign="top">virtual void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_memory_region.xhtml#a929af627a6a0430539998d12024d6c69">map</a> (cl::CommandQueue &amp;q, bool blocking)=0</td></tr>
<tr class="memdesc:a929af627a6a0430539998d12024d6c69"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enqueue a map operation of the allocated buffer on the given queue.  <a href="#a929af627a6a0430539998d12024d6c69">More...</a><br /></td></tr>
<tr class="separator:a929af627a6a0430539998d12024d6c69"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0ee6b952accaff0f7e8e61bda7889102"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_memory_region.xhtml#a0ee6b952accaff0f7e8e61bda7889102">unmap</a> (cl::CommandQueue &amp;q)=0</td></tr>
<tr class="memdesc:a0ee6b952accaff0f7e8e61bda7889102"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enqueue an unmap operation of the allocated buffer on the given queue.  <a href="#a0ee6b952accaff0f7e8e61bda7889102">More...</a><br /></td></tr>
<tr class="separator:a0ee6b952accaff0f7e8e61bda7889102"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad477d98361ee9ca6858819b772423bc4"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_memory_region.xhtml#ad477d98361ee9ca6858819b772423bc4">buffer</a> () override</td></tr>
<tr class="memdesc:ad477d98361ee9ca6858819b772423bc4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the pointer to the allocated data.  <a href="#ad477d98361ee9ca6858819b772423bc4">More...</a><br /></td></tr>
<tr class="separator:ad477d98361ee9ca6858819b772423bc4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aefe8db4d79cd87ccb3d6ac55e25594aa"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_memory_region.xhtml#aefe8db4d79cd87ccb3d6ac55e25594aa">buffer</a> () const override</td></tr>
<tr class="memdesc:aefe8db4d79cd87ccb3d6ac55e25594aa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the pointer to the allocated data.  <a href="#aefe8db4d79cd87ccb3d6ac55e25594aa">More...</a><br /></td></tr>
<tr class="separator:aefe8db4d79cd87ccb3d6ac55e25594aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0942fe2d17942077bc9c6706b8a3cc3a"><td class="memItemLeft" align="right" valign="top">void **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_c_l_memory_region.xhtml#a0942fe2d17942077bc9c6706b8a3cc3a">handle</a> () override</td></tr>
<tr class="memdesc:a0942fe2d17942077bc9c6706b8a3cc3a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Handle of internal memory.  <a href="#a0942fe2d17942077bc9c6706b8a3cc3a">More...</a><br /></td></tr>
<tr class="separator:a0942fe2d17942077bc9c6706b8a3cc3a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classarm__compute_1_1_i_memory_region"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classarm__compute_1_1_i_memory_region')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classarm__compute_1_1_i_memory_region.xhtml">IMemoryRegion</a></td></tr>
<tr class="memitem:a92ee6f66a47e8ba4bd3d01579ad4ef42 inherit pub_methods_classarm__compute_1_1_i_memory_region"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_memory_region.xhtml#a92ee6f66a47e8ba4bd3d01579ad4ef42">IMemoryRegion</a> (size_t <a class="el" href="classarm__compute_1_1_i_memory_region.xhtml#a0b6b70701c46e22849f0f363861351cd">size</a>)</td></tr>
<tr class="memdesc:a92ee6f66a47e8ba4bd3d01579ad4ef42 inherit pub_methods_classarm__compute_1_1_i_memory_region"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default constructor.  <a href="#a92ee6f66a47e8ba4bd3d01579ad4ef42">More...</a><br /></td></tr>
<tr class="separator:a92ee6f66a47e8ba4bd3d01579ad4ef42 inherit pub_methods_classarm__compute_1_1_i_memory_region"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaa097212d2b66253335ff2dca6385b13 inherit pub_methods_classarm__compute_1_1_i_memory_region"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_memory_region.xhtml#aaa097212d2b66253335ff2dca6385b13">~IMemoryRegion</a> ()=default</td></tr>
<tr class="memdesc:aaa097212d2b66253335ff2dca6385b13 inherit pub_methods_classarm__compute_1_1_i_memory_region"><td class="mdescLeft">&#160;</td><td class="mdescRight">Virtual Destructor.  <a href="#aaa097212d2b66253335ff2dca6385b13">More...</a><br /></td></tr>
<tr class="separator:aaa097212d2b66253335ff2dca6385b13 inherit pub_methods_classarm__compute_1_1_i_memory_region"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0b6b70701c46e22849f0f363861351cd inherit pub_methods_classarm__compute_1_1_i_memory_region"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_memory_region.xhtml#a0b6b70701c46e22849f0f363861351cd">size</a> ()</td></tr>
<tr class="memdesc:a0b6b70701c46e22849f0f363861351cd inherit pub_methods_classarm__compute_1_1_i_memory_region"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classarm__compute_1_1_memory.xhtml" title="CPU implementation of memory object. ">Memory</a> region size accessor.  <a href="#a0b6b70701c46e22849f0f363861351cd">More...</a><br /></td></tr>
<tr class="separator:a0b6b70701c46e22849f0f363861351cd inherit pub_methods_classarm__compute_1_1_i_memory_region"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab5c159b7d0cdca9f543019f4f47ec288 inherit pub_methods_classarm__compute_1_1_i_memory_region"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarm__compute_1_1_i_memory_region.xhtml#ab5c159b7d0cdca9f543019f4f47ec288">set_size</a> (size_t <a class="el" href="classarm__compute_1_1_i_memory_region.xhtml#a0b6b70701c46e22849f0f363861351cd">size</a>)</td></tr>
<tr class="memdesc:ab5c159b7d0cdca9f543019f4f47ec288 inherit pub_methods_classarm__compute_1_1_i_memory_region"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets size of region.  <a href="#ab5c159b7d0cdca9f543019f4f47ec288">More...</a><br /></td></tr>
<tr class="separator:ab5c159b7d0cdca9f543019f4f47ec288 inherit pub_methods_classarm__compute_1_1_i_memory_region"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>OpenCL memory region interface. </p>

<p>Definition at line <a class="el" href="_c_l_memory_region_8h_source.xhtml#l00035">35</a> of file <a class="el" href="_c_l_memory_region_8h_source.xhtml">CLMemoryRegion.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a7cdcf7d89e4815422fcb3843e4ffbb4b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classarm__compute_1_1_i_c_l_memory_region.xhtml">ICLMemoryRegion</a> </td>
          <td>(</td>
          <td class="paramtype">cl::Context&#160;</td>
          <td class="paramname"><em>ctx</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Constructor. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">ctx</td><td>OpenCL context </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">size</td><td>Region size </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a04ae87317614a2332dea02ad30eaced5"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual ~<a class="el" href="classarm__compute_1_1_i_c_l_memory_region.xhtml">ICLMemoryRegion</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span><span class="mlabel">default</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Default Destructor. </p>

</div>
</div>
<a class="anchor" id="af1759d36be2abbe1002a68ddc2255fad"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classarm__compute_1_1_i_c_l_memory_region.xhtml">ICLMemoryRegion</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_c_l_memory_region.xhtml">ICLMemoryRegion</a> &amp;&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">delete</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prevent instances of this class from being copied (As this class contains pointers) </p>

</div>
</div>
<a class="anchor" id="a4e5aaebd133c159b70f757d6ba7c4dc5"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classarm__compute_1_1_i_c_l_memory_region.xhtml">ICLMemoryRegion</a> </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classarm__compute_1_1_i_c_l_memory_region.xhtml">ICLMemoryRegion</a> &amp;&amp;&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">default</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Default move constructor. </p>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="ad477d98361ee9ca6858819b772423bc4"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void* buffer </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Returns the pointer to the allocated data. </p>
<dl class="section return"><dt>Returns</dt><dd>Pointer to the allocated data </dd></dl>

<p>Implements <a class="el" href="classarm__compute_1_1_i_memory_region.xhtml#af4cf95f81e1b269a31d2d9a7e0429a24">IMemoryRegion</a>.</p>

</div>
</div>
<a class="anchor" id="aefe8db4d79cd87ccb3d6ac55e25594aa"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void* buffer </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Returns the pointer to the allocated data. </p>
<dl class="section return"><dt>Returns</dt><dd>Pointer to the allocated data </dd></dl>

<p>Implements <a class="el" href="classarm__compute_1_1_i_memory_region.xhtml#aeb4cf01e5d74997a1994272225baeb05">IMemoryRegion</a>.</p>

</div>
</div>
<a class="anchor" id="a7f4714c4a9320d1760102ef78a984241"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const cl::Buffer&amp; cl_data </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Returns the underlying CL buffer. </p>
<dl class="section return"><dt>Returns</dt><dd>CL memory buffer object </dd></dl>

</div>
</div>
<a class="anchor" id="a0942fe2d17942077bc9c6706b8a3cc3a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void** handle </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Handle of internal memory. </p>
<dl class="section return"><dt>Returns</dt><dd>Handle of memory </dd></dl>

<p>Implements <a class="el" href="classarm__compute_1_1_i_memory_region.xhtml#a0883358ee166a82da191e1a5cd957ca5">IMemoryRegion</a>.</p>

</div>
</div>
<a class="anchor" id="a929af627a6a0430539998d12024d6c69"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void* map </td>
          <td>(</td>
          <td class="paramtype">cl::CommandQueue &amp;&#160;</td>
          <td class="paramname"><em>q</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>blocking</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Enqueue a map operation of the allocated buffer on the given queue. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">q</td><td>The CL command queue to use for the mapping operation. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">blocking</td><td>If true, then the mapping will be ready to use by the time this method returns, else it is the caller's responsibility to flush the queue and wait for the mapping operation to have completed before using the returned mapping pointer.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The mapping address. </dd></dl>

<p>Implemented in <a class="el" href="classarm__compute_1_1_c_l_fine_s_v_m_memory_region.xhtml#af540d8670cb2ccdec5a30fd2471c2e85">CLFineSVMMemoryRegion</a>, <a class="el" href="classarm__compute_1_1_c_l_coarse_s_v_m_memory_region.xhtml#af540d8670cb2ccdec5a30fd2471c2e85">CLCoarseSVMMemoryRegion</a>, and <a class="el" href="classarm__compute_1_1_c_l_buffer_memory_region.xhtml#af540d8670cb2ccdec5a30fd2471c2e85">CLBufferMemoryRegion</a>.</p>

</div>
</div>
<a class="anchor" id="aba791ecf7c921e9a1c8d84baa7dd270e"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classarm__compute_1_1_i_c_l_memory_region.xhtml">ICLMemoryRegion</a>&amp; operator= </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classarm__compute_1_1_i_c_l_memory_region.xhtml">ICLMemoryRegion</a> &amp;&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">delete</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prevent instances of this class from being copied (As this class contains pointers) </p>

</div>
</div>
<a class="anchor" id="ad09657054c2f981a19b9ac7e4b95bd30"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classarm__compute_1_1_i_c_l_memory_region.xhtml">ICLMemoryRegion</a>&amp; operator= </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classarm__compute_1_1_i_c_l_memory_region.xhtml">ICLMemoryRegion</a> &amp;&amp;&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">default</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Default move assignment operator. </p>

</div>
</div>
<a class="anchor" id="ab8777d03065e8c7146157148a5355dd1"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void* ptr </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Host/SVM pointer accessor. </p>
<dl class="section return"><dt>Returns</dt><dd>Host/SVM pointer base </dd></dl>

<p>Implemented in <a class="el" href="classarm__compute_1_1_c_l_buffer_memory_region.xhtml#a0d957ce12ecbf85d9ecff5c372cfdd26">CLBufferMemoryRegion</a>.</p>

</div>
</div>
<a class="anchor" id="a0ee6b952accaff0f7e8e61bda7889102"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void unmap </td>
          <td>(</td>
          <td class="paramtype">cl::CommandQueue &amp;&#160;</td>
          <td class="paramname"><em>q</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Enqueue an unmap operation of the allocated buffer on the given queue. </p>
<dl class="section note"><dt>Note</dt><dd>This method simply enqueue the unmap operation, it is the caller's responsibility to flush the queue and make sure the unmap is finished before the memory is accessed by the device.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in,out]</td><td class="paramname">q</td><td>The CL command queue to use for the mapping operation. </td></tr>
  </table>
  </dd>
</dl>

<p>Implemented in <a class="el" href="classarm__compute_1_1_c_l_fine_s_v_m_memory_region.xhtml#a56b704bed25e1e66ebe6b435f83fefcd">CLFineSVMMemoryRegion</a>, <a class="el" href="classarm__compute_1_1_c_l_coarse_s_v_m_memory_region.xhtml#a56b704bed25e1e66ebe6b435f83fefcd">CLCoarseSVMMemoryRegion</a>, and <a class="el" href="classarm__compute_1_1_c_l_buffer_memory_region.xhtml#a56b704bed25e1e66ebe6b435f83fefcd">CLBufferMemoryRegion</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>arm_compute/runtime/CL/<a class="el" href="_c_l_memory_region_8h_source.xhtml">CLMemoryRegion.h</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="namespacearm__compute.xhtml">arm_compute</a></li><li class="navelem"><a class="el" href="classarm__compute_1_1_i_c_l_memory_region.xhtml">ICLMemoryRegion</a></li>
    <li class="footer">Generated on Wed May 23 2018 11:36:41 for Compute Library by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.11 </li>
  </ul>
</div>
</body>
</html>
